package com.anywhere.freightman.order.model;

import com.anywhere.freightman.common.BaseModel;
import com.anywhere.freightman.common.enumeration.WaybillStatus;
import com.anywhere.freightman.common.enumeration.WaybillType;

import javax.persistence.*;
import java.util.Date;

@Table(name = "waybill")
@Entity
public class WaybillModel extends BaseModel {
    private String no;
    private Long shipperId;
    private Long receiverId;
    private String claim;
    private String appointedRoute;
    private Long km;
    private Double cost;
    private Double weight;

    @Column(name = "status")
    @Enumerated(EnumType.STRING)
    private WaybillStatus status;
    private String remark;
    private Long companyId;

    private Date createdTime;
    private Date pickTime;
    private Date doneTime;
    private Date transportTime;
    private Date payTime;
    @Column(name = "type")
    @Enumerated(EnumType.STRING)
    private WaybillType type;

    private Integer carCount;
    private String code;
    private String exOrderNo;

    public String getExOrderNo() {
        return exOrderNo;
    }

    public void setExOrderNo(String exOrderNo) {
        this.exOrderNo = exOrderNo;
    }

    public String getCode() {
        return code;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public Integer getCarCount() {
        return carCount;
    }

    public void setCarCount(Integer carCount) {
        this.carCount = carCount;
    }

    public WaybillType getType() {
        return type;
    }

    public void setType(WaybillType type) {
        this.type = type;
    }

    public Date getTransportTime() {
        return transportTime;
    }

    public void setTransportTime(Date transportTime) {
        this.transportTime = transportTime;
    }

    public Date getPayTime() {
        return payTime;
    }

    public void setPayTime(Date payTime) {
        this.payTime = payTime;
    }

    public Date getCreatedTime() {
        return createdTime;
    }

    public void setCreatedTime(Date createdTime) {
        this.createdTime = createdTime;
    }

    public Date getPickTime() {
        return pickTime;
    }

    public void setPickTime(Date pickTime) {
        this.pickTime = pickTime;
    }

    public Date getDoneTime() {
        return doneTime;
    }

    public void setDoneTime(Date doneTime) {
        this.doneTime = doneTime;
    }

    public String getNo() {
        return no;
    }

    public void setNo(String no) {
        this.no = no;
    }

    public Long getShipperId() {
        return shipperId;
    }

    public void setShipperId(Long shipperId) {
        this.shipperId = shipperId;
    }

    public Long getReceiverId() {
        return receiverId;
    }

    public void setReceiverId(Long receiverId) {
        this.receiverId = receiverId;
    }

    public String getClaim() {
        return claim;
    }

    public void setClaim(String claim) {
        this.claim = claim;
    }

    public String getAppointedRoute() {
        return appointedRoute;
    }

    public void setAppointedRoute(String appointedRoute) {
        this.appointedRoute = appointedRoute;
    }

    public Long getKm() {
        return km;
    }

    public void setKm(Long km) {
        this.km = km;
    }

    public Double getCost() {
        return cost;
    }

    public void setCost(Double cost) {
        this.cost = cost;
    }

    public Double getWeight() {
        return weight;
    }

    public void setWeight(Double weight) {
        this.weight = weight;
    }

    public WaybillStatus getStatus() {
        return status;
    }

    public void setStatus(WaybillStatus status) {
        this.status = status;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public Long getCompanyId() {
        return companyId;
    }

    public void setCompanyId(Long companyId) {
        this.companyId = companyId;
    }
}
